package DAO;

import ClassesBasicas.Consulta;
import Excecao.ConsultaInexistenteException;

public class RepositorioConsulta extends RepositorioBasico {


	public RepositorioConsulta(){
		super();
	}

	public void inserir(Consulta c){
		abreSessao();
		session.save(c);
		fechaSessao();		
	}

	public void atualizar(Consulta c){
		abreSessao();
		session.saveOrUpdate(c);
		fechaSessao();
	}

	public Consulta consultar(int codigo) throws ConsultaInexistenteException{
		abreSessao();
		Consulta retorno = (Consulta) session.get(Consulta.class, codigo);
		fechaSessao();
		if(retorno == null){
			throw new ConsultaInexistenteException(null);
		}
		return retorno;
	}

	public void remover(int codigo){
		abreSessao();
		Consulta consulta = (Consulta) session.get(Consulta.class, codigo);
		session.delete(consulta);
		fechaSessao();
	}

	public boolean existe(int codigo){
		boolean existe = true;
		Consulta consulta = null;
		try {
			consulta = consultar(codigo);
		} catch (ConsultaInexistenteException e) {
			e.printStackTrace();
		}
		if (consulta==null)
			existe = false;
		return existe;
	}
}

